package com.zhenmaitang.clinic_sys.mapper;

import com.zhenmaitang.clinic_sys.entity.DataScope;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 数据权限Mapper接口
 */
@Mapper
public interface DataScopeMapper {
    
    /**
     * 查询所有数据权限
     */
    List<DataScope> findAll();
    
    /**
     * 根据ID查询数据权限
     */
    DataScope findById(@Param("id") Integer id);
    
    /**
     * 根据代码查询数据权限
     */
    DataScope findByCode(@Param("code") String code);
    
    /**
     * 根据资源类型查询数据权限
     */
    List<DataScope> findByResource(@Param("resource") String resource);
    
    /**
     * 插入数据权限
     */
    int insert(DataScope dataScope);
    
    /**
     * 更新数据权限
     */
    int update(DataScope dataScope);
    
    /**
     * 删除数据权限
     */
    int deleteById(@Param("id") Integer id);


    /**
     * 根据userId获取用户部门id列表
     */
   List<Integer> findDepartmentIdsByUserId(Integer userId);
}